Telegram Group & Telegram Channel
🐍 Хитрая задача на Python с подвохом

📌 Задача:
Ты пишешь функцию track, которая возвращает список всех значений, которые в неё передавали. Пример поведения:


print(track(1)) # [1]
print(track(2)) # [1, 2]
print(track(3)) # [1, 2, 3]


Реализуй эту функцию.

🎯 Подвох:
- Решение работает без глобальных переменных
- Используется поведение изменяемых аргументов по умолчанию
- Это поведение часто становится причиной багов у новичков — но здесь оно работает на нас

---

Ожидаемый результат:


def track(value, cache=[]):
cache.append(value)
return cache

# Проверка:
print(track(1)) # [1]
print(track(2)) # [1, 2]
print(track(3)) # [1, 2, 3]


🧠 Объяснение подвоха:

- Аргумент
cache=[] вычисляется один раз, при первом вызове функции
- Все последующие вызовы используют один и тот же список
- Обычно это считается "ловушкой", но в задачах на замыкание состояния — это полезный трюк

⚠️ Не путай: если внутри функции ты напишешь
cache = [], то всё сломается — потому что создастся новый список каждый раз



tg-me.com/python_testit/1174
Create:
Last Update:

🐍 Хитрая задача на Python с подвохом

📌 Задача:
Ты пишешь функцию track, которая возвращает список всех значений, которые в неё передавали. Пример поведения:


print(track(1)) # [1]
print(track(2)) # [1, 2]
print(track(3)) # [1, 2, 3]


Реализуй эту функцию.

🎯 Подвох:
- Решение работает без глобальных переменных
- Используется поведение изменяемых аргументов по умолчанию
- Это поведение часто становится причиной багов у новичков — но здесь оно работает на нас

---

Ожидаемый результат:


def track(value, cache=[]):
cache.append(value)
return cache

# Проверка:
print(track(1)) # [1]
print(track(2)) # [1, 2]
print(track(3)) # [1, 2, 3]


🧠 Объяснение подвоха:

- Аргумент
cache=[] вычисляется один раз, при первом вызове функции
- Все последующие вызовы используют один и тот же список
- Обычно это считается "ловушкой", но в задачах на замыкание состояния — это полезный трюк

⚠️ Не путай: если внутри функции ты напишешь
cache = [], то всё сломается — потому что создастся новый список каждый раз

BY Python tests


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/python_testit/1174

View MORE
Open in Telegram


Python tests Telegram | DID YOU KNOW?

Date: |

Mr. Durov launched Telegram in late 2013 with his brother, Nikolai, just months before he was pushed out of VK, the Russian social-media platform he founded. Mr. Durov pitched his new app—funded with the proceeds from the VK sale—less as a business than as a way for people to send messages while avoiding government surveillance and censorship.

If riding a bucking bronco is your idea of fun, you’re going to love what the stock market has in store. Consider this past week’s ride a preview.The week’s action didn’t look like much, if you didn’t know better. The Dow Jones Industrial Average rose 213.12 points or 0.6%, while the S&P 500 advanced 0.5%, and the Nasdaq Composite ended little changed.

Python tests from id


Telegram Python tests
FROM USA